People watch a lot of television every day, and therefore many users submit search queries to a search engine while watching TV. Knowing the context that the user is in while making a search query can help provide better and more contextual results. For example, if the search engine knows what TV program a person is watching, the search engine can provide search results that are more relevant, or even predict what the user may search for while watching that content.
Some systems receive explicit information from a user to identify the user's context, but such systems are burdensome for users. Other systems provide an opt-in feature where users choose to have their ambient sounds monitored. When the feature is enabled by a user, the sounds are collected and sent to a server (e.g., once a minute or one every five minutes), where they are analyzed and compared against a large database of known audio from video programs. When a match is found, the server is able to identify what video program is being presented in the vicinity of the user. Such a system has several drawbacks. First, the frequent transmissions of data to the server consume lots of energy, and thus reduce battery life of the user's client device. Second, such a system is either burdensome (requiring periodic permission to continue tracking), or else creates privacy concerns by keeping the collection open too long.